package com.czk.scala.chapter05

/**
 * 简化函数
 *
 * @Author:ChenZhangKun
 * @Date: 2021/12/8 17:29
 */
object Test03_Simplify {
  def main(args: Array[String]): Unit = {
    def f0(name: String): String = {
      // 省略return
      name
    }

    println(f0("czk"))

    // 如果函数体只有一行代码，可以省略花括号

    def f1(name: String): String = name

    println(f1("nzq"))


    // 返回值类型如果编译期可以推断，也可以省略

    def f3(name: String) = name

    println(f3("kd"))

    // 没有参数列表时，可以省略小括号
    def f4(): Unit=println("czk")
    // 省略小括号调用
    f4()
    f4

    // 没有参数列表，可以在声明时是省略括号
    def f5:Unit=println("james")
    f5

    // 如果不关心名称，只关心逻辑处理，name函数名def可以省略
    // 定义匿名函数
    (name: String)=>println(name)
  }
}
